-
Couldn't load subscription status.
- Fork 11
Search API - Remove/Rename confusing fields #135
Conversation
|
🚨 Breaking API change detected: Modified (2)
|
4990f2a to
813d638
Compare
|
Signal @meilisearch/docs-team, @meilisearch/core-team; a telemetry node is renamed, and one is added. See the Telemetry Changes section in the PR first comment. Thanks to those who participated in the discussions. 🧃 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🔥🔥🔥
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🔥
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔥🔥🔥🔥🔥🔥🔥🔥 lgtm
fc57b35 to
953f3c2
Compare
* Rename nbHits, remove exhaustive* boolean fields * Rename approximativeNbHits to estimatedTotalHits * Update open-api.yaml * Apply naming changes for facet distribution and showing matches position * Add a telemetry for facet distribution usage
* Bump open-api.yml to v0.28 * Telemetry - Add `x-meilisearch-client` query parameter (#145) * Introduce the x-meilisearch-client query parameter * Update text/0034-telemetry-policies.md Co-authored-by: Bruno Casali <[email protected]> * Update text/0034-telemetry-policies.md Co-authored-by: Bruno Casali <[email protected]> Co-authored-by: Bruno Casali <[email protected]> * GeoSearch — Support string type for `_geo` `lat` and `lng` fields (#83) * Update specification to support string type for _geo lat and lng fields * mention types mixing for _geo object * Tasks API - Rename `uid` to `taskUid` in the `202 - Accepted` Summarized Task Response (#144) * Rename 202 uid to taskUid * Update text/0060-tasks-api.md Co-authored-by: cvermand <[email protected]> Co-authored-by: cvermand <[email protected]> * Tasks API - Seek/Keyset based pagination (#115) * Move cursor based pagination spec to tasks API spec * remove pagination as a future capability * Clarify boundaries for limit query parameter * Update OpenApi specification * Remove limit field boundaries * Apply suggestions from code review Co-authored-by: Clément Renault <[email protected]> * Update open-api.yml and removes cursor term mentions * Update text/0060-tasks-api.md Co-authored-by: Tommy <[email protected]> * Remove route mention in seek-keyset pagination section Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Tommy <[email protected]> * Tasks API - Filter tasks list by `type`/`status`/`indexUid` (#116) * move filtering tasks by status/type parameter to task api spec * Update specification * Add details about case-sensitivy + rework error message * Introducing naming changes plus make the specification a source of truth instead of a changelog * Remove a future possibility being introduced * misc - replace createIndex to the right type and add the missing type field to the 202 Response resource * Dumps API - Make dump creation an asynchronous task (#139) * wip * Make a dump creation a visible asynchronous task * Add precisions * Update open-api.yml * Add ommited type field for summarized task response * Add future possibilities * Apply suggestions from code review Co-authored-by: cvermand <[email protected]> * Precise that indexUid can be null * Precise priorization of dumpCreation task over other task types * Keep taskUid for 202 response * remove dumps.get API key action Co-authored-by: cvermand <[email protected]> * Search API - Remove/Rename confusing fields (#135) * Rename nbHits, remove exhaustive* boolean fields * Rename approximativeNbHits to estimatedTotalHits * Update open-api.yaml * Apply naming changes for facet distribution and showing matches position * Add a telemetry for facet distribution usage * API Guideline - Return list of API resources under a `results` array (#138) * Place list of documents under a results array on /documents * Add results array for indexes object list * Add the future of indexes pagination * Update open-api.yml * Fix typo * Apply suggestions from code review Co-authored-by: cvermand <[email protected]> * Add offset/limit pagination for indexes and API keys * Try to add multipe refs to a response object Co-authored-by: cvermand <[email protected]> * Remove name field (#140) * Documents API - `displayedAttributes` should not impact the documents API / Rename `attributesToRetrieve` to `fields` (#143) * Specifies that displayedAttributes setting does not impact the GET documents endpoint * Rename attributeToRetrieve to fields on /documents * Add a future possibily to rejectt a field from a document in the given response * Precise behavior details about fields query parameter * Add fields query parameter on GET /indexes/{index}/documents/{docId} * API Keys - Determinist API Keys + Security changes (#148) * Add an uid to make API Keys determinists, plus add a non-unique human readable name field to ease reading information * Describe errors for uid and name fields * Apply suggestions from code review Co-authored-by: Bruno Casali <[email protected]> * misc: add precisions * Reorganize route descriptions * Update error_code when API Key already exists for a given uid * Apply suggestions from code review Co-authored-by: Many the fish <[email protected]> * Add new keys actions, remove master-key changes, introduce a new error for immutable field and update tenant token * Update open-api spec * Update immutable_field error message * Apply suggestions from code review Co-authored-by: Many the fish <[email protected]> * Mention that the Default Admin API Key can manage keys * Specify that the JWT Tenant Token must be enrypted with the API Key value * Update the spec regarding the description of the Admin API Key to be up-to-date * Add uid_or_key url param to update and delete a key * Update text/0085-api-keys.md Co-authored-by: Many the fish <[email protected]> * Update text/0085-api-keys.md Co-authored-by: Many the fish <[email protected]> Co-authored-by: Bruno Casali <[email protected]> Co-authored-by: Many the fish <[email protected]> Co-authored-by: Kerollmops <[email protected]> * Geosearch - Enhance lat/lng format error messages (#149) * Update the geosearch error message * misc: organiser error message in the right specification Co-authored-by: Guillaume Mourier <[email protected]> * Introduces HTTP Verbs changesto be compliant regarding a Rest API (#152) * Telemetry - Replace `x-meilisearch-client` query parameter by `X-Meilisearch-Client` header (#150) * Removes x-meilisearch-client, replace it by a header * Remove capslock * fix typo (#151) * Mention telemetry.meilisearch.com (#153) * update ranking rules error message (#154) * Misc — Update dump versions compatibility table (#156) * Update dump table * Update text/0105-dumps-api.md * Settings API - Customize the hard limits for `pagination` and `faceting` (#157) * Introduces specification files * Update files name * branch telemetry * Update open-api.yml * Update text/0034-telemetry-policies.md Co-authored-by: Clément Renault <[email protected]> * update open-api.yml * Update text/157-faceting-setting-api.md Co-authored-by: Clément Renault <[email protected]> * Rename limitedTo to maxTotalHits * Specify order of returned facet Co-authored-by: Clément Renault <[email protected]> * Add dumpCreation task type to OpenAPI.yml * Tasks filtering params to be in query instead of path on OpenAPI spec Co-authored-by: Bruno Casali <[email protected]> Co-authored-by: cvermand <[email protected]> Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Tommy <[email protected]> Co-authored-by: Many the fish <[email protected]> Co-authored-by: Kerollmops <[email protected]> Co-authored-by: Tamo <[email protected]> Co-authored-by: ad hoc <[email protected]> Co-authored-by: Clémentine Urquizar - curqui <[email protected]>
🤖 API Diff
Why?
nbHits/exhaustiveNbHits/exhaustiveFacetsCountWe found that
nbHitsresponse field is confusing for multiple users who expect to get the number exact of hits which is not the case.One of the most problematic consequences is the users rely on the
nbHitsvalue to build finished pagination. We had to create an issue to avoid this, cf meilisearch/documentation#561This specification is intended to make it clearer that the number returned is an estimate and thus discourages users from building finite pagination for their search experience.
Since
exhaustiveFacetsCountandexhaustiveNbHitsare always returningfalseand do not seem to help users understand the engine's behavior, they are removed.matches/_matchesInfoRelated Discussion
facetsDistributionRelated Discussion
API Changes
nbHitsresponse parameter toestimatedTotalHitsexhaustiveNbHitsresponse parameterexhaustiveFacetsCountresponse parametermatchesrequest parameter is renamedshowMatchesPosition_matchesInforesponse parameter is renamed_matchesPositionfacetsDistributionrequest parameter is renamedfacetsfacetsDistributionresponse parameter is renamedfacetDistributionTelemetry Changes
facetstelemetry nodeformatting.matchestoformatting.show_matches_position